package org.szy.plugin.dev.entity;

import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Table;
import org.szy.core.common.entity.BaseEntity;
import org.szy.core.common.listener.BaseInsertListener;
import org.szy.core.common.listener.BaseUpdateListener;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 开发-站内消息实体
 *
 * @author wangbuhao
 * @since 2023-06-28 18:17:41
 **/
@Table(value = "dev_message", onInsert = BaseInsertListener.class, onUpdate = BaseUpdateListener.class)
public class DevMessage extends BaseEntity {

    /** 消息类型（1通知 2私信 3待办） */
    private String category;
    /** 消息标题 */
    private String title;
    /** 状态：0.暂存，1.发送 */
    private Integer status;
    /** 是否通知全部  1、全部，2、用户 */
    private Integer whole;
    /** 业务数据，JSON格式 */
    @Column(isLarge = true)
    private String extJson;
    /** 消息正文 */
    @Column(isLarge = true)
    private String content;
    /** 用户列表 */
    @Column(isLarge = true)
    private String userList;
    /** 发送时间 */
    private LocalDateTime publishTime;


    public String getCategory() {
        return category;
    }
    public void setCategory(String category) {
        this.category = category;
    }
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
    public String getExtJson() {
        return extJson;
    }
    public void setExtJson(String extJson) {
        this.extJson = extJson;
    }

    public String getUserList() {
        return userList;
    }

    public void setUserList(String userList) {
        this.userList = userList;
    }

    public LocalDateTime getPublishTime() {
        return publishTime;
    }

    public void setPublishTime(LocalDateTime publishTime) {
        this.publishTime = publishTime;
    }

    public Integer getWhole() {
        return whole;
    }

    public void setWhole(Integer whole) {
        this.whole = whole;
    }
}
